package Day11面向对象;

/*  面向过程:每个过程都自己亲自参与
    面向对象:找到对象 让对象帮我们做过程
    对象:能帮我们干活
----------------------------------------
    类:是一类事物的描述(模板 图纸...)
    对事物的描述: 属性(信息)/n :姓名年龄身高...
                行为/v      :吃饭睡觉上课...

    对象:是类的一个具体实例

    先有类,再有对象,一个类可以创建无数对象.
----------------------------------------
类的格式: 修饰符 class 类名{
            成员变量
            成员方法
        }
----------------------------------------
class: 关键字 表示定义一个类
类名: 满足标识符规则
成员变量: 表示属性  和变量格式一样  数据类型 变量名 = 初始值,位置在类中 方法外
成员方法: 表示行为  和之前定义方法一样  去掉static
*/


 class shouji {
    //成员变量表示属性
    String brand;//品牌
    int price;//价格
    String color;//颜色

    //成员方法表示行为
    public void call(String name){

        System.out.println("打电话给" + name);
    }
    public void message(){

        System.out.println("群发短信");
    }
}


//对象的使用:
//  创建对象格式:   类名 对象名 = new 类名();
//  成员变量使用:   对象名.成员变量;
//  成员方法使用:   对象名.方法名();
public class phone {
    public static void main(String[] args) {
        //创建对象格式:   类名 对象名 = new 类名();
        shouji a = new shouji();

        //使用对象格式:   对象名.成员变量
        a.brand = "小米";  //不赋值就是默认值 null
        a.price = 5999;   //不复制就是默认值 0
        a.color = "粉色";
        System.out.println(a.brand + "," + a.color + "," + a.price);

        //成员方法使用:   对象名.方法名();
        a.call("雷军");
        a.message();
    }
}

//一个java文件可以有多个类，但只能有一个public的类，并且public的类名必须与文件名相一致。
//// 一个文件中可以只有非public类，如果只有一个非public类，此类可以跟文件名不同。